Many modern computing systems include power management functionality for reducing the overall amount of power consumed by the computing system. Power management may be implemented using software or hardware in the computing system capable of placing the computing system in different power states. For example, a power management scheme may cause the computing system to operate in the power state having the lowest power demand to conserve energy.
When executing a workload, a computing system may characterize the workload beforehand and adjust the system to effect a desired average response time. Other solutions may adjust the system based on ancillary metrics such as central processing unit (CPU) utilization, or end-to-end response; however, such metrics still may not accurately reflect a user's satisfaction with the response time.
In some computing platforms, users may be charged based on utilization time. This approach encourages users to prioritize performance when scheduling a job, since a faster completion time results in a lower cost to the user. However, users should have incentives for accepting a longer completion time in exchange for reduced power consumption.